<?php
	/**
     * Incluyendo el archivo donde se encuentra la clase xajax
     */
	 require_once $_SERVER['DOCUMENT_ROOT'] . '/spa/xajax/xajax_core/xajax.inc.php';
	 require_once $_SERVER['DOCUMENT_ROOT'] . '/spa/dateadd.inc';

    /**
     * Instanciando un objeto de la clase xajax
     */
	 $xajax = new xajax();
	 
	function buscarDatosEmpleado($ci) {
		$conexion = OCILogon ('spa','1234') or die( "¡No se pudo conectar a la base de Datos!") or die (OCIError());

		$query = "SELECT NOMBRE || ' ' || APELLIDO || '/C.I. ' || CI EMPLEADO
				  FROM EMPLEADO
				  WHERE CI = $ci";
					  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
			
		if ($rows > 0)
			$datosEmpleado = $resultado['EMPLEADO'][0];
			
		return $datosEmpleado;
	}
	 
	 /**
     * Escribiendo una función que será llamada por medio de ajax
     */		 
	function validarRif($rif) {
		$respuesta = new xajaxResponse();
		
		if ($rif == '') {
			$respuesta -> assign("errorRif", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
			$respuesta -> assign("errorR", "innerHTML", '<input name="errorRif" type="hidden" value="true" />');
		}
		
		else {
			$conexion = OCILogon ('spa','1234') or die( "¡No se pudo conectar a la base de Datos!") or die (OCIError());

			$query = "SELECT PK_RIF_LOCAL
					  FROM LOCAL
					  WHERE PK_RIF_LOCAL = '$rif'
					  AND STATUS_LOCAL = 'ACTIVO'";
					  
			$sentencia = OCIParse($conexion, $query);
	
			OCIExecute($sentencia);
			
			$rows = OCIFetchstatement($sentencia, $resultado);
			
			if ($rows > 0) {
				$respuesta -> assign("errorRif", "innerHTML", '<font color="#990000" size="-1">* RIF duplicado</font>');
				$respuesta -> assign("errorR", "innerHTML", '<input name="errorRif" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorRif", "innerHTML", '');
				$respuesta -> assign("errorR", "innerHTML", '<input name="errorRif" type="hidden" value="false" />');	
			}
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarRif");
	
	function validarDescripcion($descripcion) {
		$respuesta = new xajaxResponse();
		
		if ($descripcion == '') {
			$respuesta -> assign("errorDescripcion", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
			$respuesta -> assign("errorD", "innerHTML", '<input name="errorDescripcion" type="hidden" value="true" />');
		}
		
		else {
			$respuesta -> assign("errorDescripcion", "innerHTML", '');
			$respuesta -> assign("errorD", "innerHTML", '<input name="errorDescripcion" type="hidden" value="false" />');
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarDescripcion");
	
	function validarTamano($tamano) {
		$respuesta = new xajaxResponse();
		
		if ($tamano == '') {
			$respuesta -> assign("errorTamano", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
			$respuesta -> assign("errorT", "innerHTML", '<input name="errorTamano" type="hidden" value="true" />');
		}
			
		else if (!is_numeric($tamano)) {
			$respuesta -> assign("errorTamano", "innerHTML", '<font color="#990000" size="-1">* Tamaño debe ser numérico</font>');
			$respuesta -> assign("errorT", "innerHTML", '<input name="errorTamano" type="hidden" value="true" />');
		}
			
		else if ($tamano <= 0) {
			$respuesta -> assign("errorTamano", "innerHTML", '<font color="#990000" size="-1">* Tamaño debe ser positivo</font>');
			$respuesta -> assign("errorT", "innerHTML", '<input name="errorTamano" type="hidden" value="true" />');
		}
			
		else {
			$respuesta -> assign("errorTamano", "innerHTML", '');
			$respuesta -> assign("errorT", "innerHTML", '<input name="errorTamano" type="hidden" value="false" />');
		}		
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarTamano");
	
	function cargarCiudades($idPais, $idEstado) {
		$conexion = OCILogon ('spa','1234') or die( "¡No se pudo conectar a la base de Datos!") or die (OCIError());

		$query = "SELECT PK_ID_CIUDAD, NOMBRE_CIUDAD
				  FROM CIUDAD
				  WHERE PK_FK_ID_PAIS = $idPais
				  AND PK_FK_ID_ESTADO = $idEstado";
					  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$selectCiudad = '<select name="ciudad"
		onchange="xajax_validarCiudad(document.local.ciudad.options[document.local.ciudad.selectedIndex].value)"><option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
			
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectCiudad .= '<option value=' . $resultado['PK_ID_CIUDAD'][$i] . '>' . $resultado['NOMBRE_CIUDAD'][$i] . '</option>';
				
		$selectCiudad .= '</select>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("ciudad", "innerHTML", $selectCiudad);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("cargarCiudades");
	
	function cargarEstados($idPais) {
		$conexion = OCILogon ('spa','1234') or die( "¡No se pudo conectar a la base de Datos!") or die (OCIError());

		$query = "SELECT PK_ID_ESTADO, NOMBRE_EDO
				  FROM ESTADO
				  WHERE PK_FK_ID_PAIS = $idPais";
					  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$selectEstado = '<select name="estado"
		onchange="xajax_cargarCiudades(document.local.pais.options[document.local.pais.selectedIndex].value,
								       document.local.estado.options[document.local.estado.selectedIndex].value);
				  
				  xajax_validarEstado(document.local.estado.options[document.local.estado.selectedIndex].value)">
		<option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
			
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectEstado .= '<option value=' . $resultado['PK_ID_ESTADO'][$i] . '>' . $resultado['NOMBRE_EDO'][$i] . '</option>';
				
		$selectEstado .= '</select>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("estado", "innerHTML", $selectEstado);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("cargarEstados");
	
	function cargarPaises() {
		$conexion = OCILogon ('spa','1234') or die( "¡No se pudo conectar a la base de Datos!") or die (OCIError());

		$query = "SELECT * FROM PAIS";
					  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$selectPais = '<select name="pais"
		onchange="xajax_cargarEstados(document.local.pais.options[document.local.pais.selectedIndex].value);
		
				  xajax_validarPais(document.local.pais.options[document.local.pais.selectedIndex].value)">
		<option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
			
		if ($rows > 0)
			for ($i = 0; $i < $rows; $i++)
				$selectPais .= '<option value=' . $resultado['PK_ID_PAIS'][$i] . '>' . $resultado['NOMBRE_PAIS'][$i] . '</option>';
				
		$selectPais .= '</select>';
		
		return $selectPais;
	}
	
	function validarPais($pais) {
		$respuesta = new xajaxResponse();
		 
		if ($pais == 0) {
			$selectEstado = '<select name="estado"
							onchange="xajax_cargarCiudades(document.local.estado.options
											[document.local.estado.selectedIndex].value);
		
				  			         xajax_validarEstado(document.local.estado.options
														  [document.local.estado.selectedIndex].value)">
						   <option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
						   
			$selectCiudad = '<select name="ciudad"
							onchange="xajax_validaCiudad(document.local.ciudad.options
											[document.local.ciudad.selectedIndex].value)">
						   <option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
						  
			$calleUrb = '<input name="calleUrb" type="text" size="40" maxlength="20" 
						  onblur="xajax_validarCalleUrb(document.local.calleUrb.value)" />';
						  
			$casaEdif = '<input name="casaEdif" type="text" size="40" maxlength="20" 
						  onblur="xajax_validarCasaEdif(document.local.casaEdif.value)" />';
			
			$respuesta -> assign("ciudad", "innerHTML", $selectCiudad);
			$respuesta -> assign("calleUrb", "innerHTML", $calleUrb);
			$respuesta -> assign("casaEdif", "innerHTML", $casaEdif);
			
			$respuesta -> assign("estado", "innerHTML", $selectEstado);
			$respuesta -> assign("ciudad", "innerHTML", $selectCiudad);
			
			$respuesta -> assign("errorPais", "innerHTML", '<font color="#990000" size="-1">* Seleccione un paÃ­s</font>');
			$respuesta -> assign("errorP", "innerHTML", '<input name="errorPais" type="hidden" value="true" />');
			
			$respuesta -> assign("errorEstado", "innerHTML", '<font color="#990000" size="-1">* Seleccione un estado</font>');
			$respuesta -> assign("errorE", "innerHTML", '<input name="errorEstado" type="hidden" value="true" />');
			
			$respuesta -> assign("errorCiudad", "innerHTML", '<font color="#990000" size="-1">* Seleccione una ciudad</font>');
			$respuesta -> assign("errorC", "innerHTML", '<input name="errorCiudad" type="hidden" value="true" />');
		}
		 
		else {
			$respuesta -> assign("errorPais", "innerHTML", '');
		 	$respuesta -> assign("errorP", "innerHTML", '<input name="errorPais" type="hidden" value="false" />');			
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarPais");
	
	
	function validarEstado($estado) {
		$respuesta = new xajaxResponse();
		 
		if ($estado == 0) {
			$selectCiudad = '<select name="ciudad"
							onchange="xajax_validaCiudad(document.local.ciudad.options
											[document.local.ciudad.selectedIndex].value)">
						   <option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>';
						   
			$calleUrb = '<input name="calleUrb" type="text" size="40" maxlength="20" 
						  onblur="xajax_validarCalleUrb(document.local.calleUrb.value)" />';
						  
			$casaEdif = '<input name="casaEdif" type="text" size="40" maxlength="20" 
						  onblur="xajax_validarCasaEdif(document.local.casaEdif.value)" />';
			
			$respuesta -> assign("ciudad", "innerHTML", $selectCiudad);
			$respuesta -> assign("calleUrb", "innerHTML", $calleUrb);
			$respuesta -> assign("casaEdif", "innerHTML", $casaEdif);
			
			$respuesta -> assign("errorEstado", "innerHTML", '<font color="#990000" size="-1">* Seleccione un estado</font>');
			$respuesta -> assign("errorE", "innerHTML", '<input name="errorEstado" type="hidden" value="true" />');
			
			$respuesta -> assign("errorCiudad", "innerHTML", '<font color="#990000" size="-1">* Seleccione un paÃ­s</font>');
			$respuesta -> assign("errorC", "innerHTML", '<input name="errorCiudad" type="hidden" value="true" />');
		}
		 
		else {
			$respuesta -> assign("errorEstado", "innerHTML", '');
		 	$respuesta -> assign("errorE", "innerHTML", '<input name="errorEstado" type="hidden" value="false" />');	
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarEstado");
	
	
	function validarCiudad($ciudad) {
		$respuesta = new xajaxResponse();
		 
		if ($ciudad == 0) {
			$calleUrb = '<input name="calleUrb" type="text" size="40" maxlength="20" 
						  onblur="xajax_validarCalleUrb(document.local.calleUrb.value)" />';
						  
			$casaEdif = '<input name="casaEdif" type="text" size="40" maxlength="20" 
						  onblur="xajax_validarCasaEdif(document.local.casaEdif.value)" />';
			
			$respuesta -> assign("calleUrb", "innerHTML", $calleUrb);
			$respuesta -> assign("casaEdif", "innerHTML", $casaEdif);
			
			$respuesta -> assign("errorCiudad", "innerHTML", '<font color="#990000" size="-1">* Seleccione una ciudad</font>');
			$respuesta -> assign("errorC", "innerHTML", '<input name="errorCiudad" type="hidden" value="true" />');
		}
		 
		else {
			$respuesta -> assign("errorCiudad", "innerHTML", '');
		 	$respuesta -> assign("errorC", "innerHTML", '<input name="errorCiudad" type="hidden" value="false" />');	
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCiudad");
	
	function validarCasaEdif($casaEdif) {
		$respuesta = new xajaxResponse();
		 
		if ($casaEdif == '') {
			$respuesta -> assign("errorCasaEdif", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
			$respuesta -> assign("errorCE", "innerHTML", '<input name="errorCasaEdif" type="hidden" value="true" />');
		}
		 
		else {
			$respuesta -> assign("errorCasaEdif", "innerHTML", '');
		 	$respuesta -> assign("errorCE", "innerHTML", '<input name="errorCasaEdif" type="hidden" value="false" />');	
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCasaEdif");
	
	function validarCalleUrb($calleUrb) {
		$respuesta = new xajaxResponse();
		 
		if ($calleUrb == '') {
			$respuesta -> assign("errorCalleUrb", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
			$respuesta -> assign("errorCU", "innerHTML", '<input name="errorCalleUrb" type="hidden" value="true" />');
		}
		 
		else {
			$respuesta -> assign("errorCalleUrb", "innerHTML", '');
		 	$respuesta -> assign("errorCU", "innerHTML", '<input name="errorCalleUrb" type="hidden" value="false" />');	
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCalleUrb");
	
	function validarNombre($nombre) {
		$respuesta = new xajaxResponse();
		 
		if ($nombre == '') {
			$respuesta -> assign("errorNombre", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
			$respuesta -> assign("errorN", "innerHTML", '<input name="errorNombre" type="hidden" value="true" />');
		}
		 
		else {
			$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
			$query = "SELECT NOMBRE_LOCAL
		          	  FROM LOCAL
					  WHERE NOMBRE_LOCAL = UPPER('$nombre')
					  AND STATUS_LOCAL = 'ACTIVO'";
		
			$sentencia = OCIParse($conexion, $query);
		
			OCIExecute($sentencia);
		
			OCILogOff($conexion);
			
			$rows = OCIFetchstatement($sentencia, $resultado);
		
			if ($rows > 0) {
				$respuesta -> assign("errorNombre", "innerHTML", '<font color="#990000">* Nombre duplicado</font>');
				$respuesta -> assign("errorN", "innerHTML", '<input name="errorNombre" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorNombre", "innerHTML", '');	
				$respuesta -> assign("errorN", "innerHTML", '<input name="errorNombre" type="hidden" value="false" />');		
			}	
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarNombre");
	
	function validarCargo($ci, $ci2, $cargo) {
		$respuesta = new xajaxResponse();
		
		if ($ci == $ci2) {
			if ($cargo == 'GERENTE') {
				$respuesta -> assign("errorCiGerente", "innerHTML", '<font color="#990000" size="-1">* El empleado no puede tener más de un cargo simultáneamente</font>');
				$respuesta -> assign("errorCG", "innerHTML", '<input name="errorCiGerente" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorCiCoordinadorJunior", "innerHTML", '<font color="#990000" size="-1">* El empleado no puede tener más de un cargo simultáneamente</font>');
				$respuesta -> assign("errorCCJ", "innerHTML", '<input name="errorCiCoordinadorJunior" type="hidden" value="true" />');
			}
		}
		
		else if ($ci == '') {
			if ($cargo == 'GERENTE') {
				$respuesta -> assign("errorCiGerente", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
				$respuesta -> assign("errorCG", "innerHTML", '<input name="errorCiGerente" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorCiCoordinadorJunior", "innerHTML", '<font color="#990000" size="-1">* Campo obligatorio</font>');
				$respuesta -> assign("errorCCJ", "innerHTML", '<input name="errorCiCoordinadorJunior" type="hidden" value="true" />');
			}
		}
		
		else if (!is_numeric($ci)) {
			if ($cargo == 'GERENTE') {
				$respuesta -> assign("errorCiGerente", "innerHTML", '<font color="#990000" size="-1">* CI Gerente debe ser numérica</font>');
				$respuesta -> assign("errorCG", "innerHTML", '<input name="errorCiGerente" type="hidden" value="true" />');
			}
			
			else {
				$respuesta -> assign("errorCiCoordinadorJunior", "innerHTML", '<font color="#990000" size="-1">* CI Coordinador Junior debe ser numérica</font>');
				$respuesta -> assign("errorCCJ", "innerHTML", '<input name="errorCiCoordinadorJunior" type="hidden" value="true" />');
			}
		}
		
		else {
			$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
			$query = "SELECT CI
		          	  FROM EMPLEADO
					  WHERE CI = $ci
					  AND STATUS = 'ACTIVO'";
		
			$sentencia = OCIParse($conexion, $query);
		
			OCIExecute($sentencia);
		
			$rows = OCIFetchstatement($sentencia, $resultado);	
			
			if ($rows == 0) { // Si la cédula no está registrada
				if ($cargo == 'GERENTE') {
					$respuesta -> assign("errorCiGerente", "innerHTML", '<font color="#990000" size="-1">* Cédula no registrada</font>');
					$respuesta -> assign("errorCG", "innerHTML", '<input name="errorCiGerente" type="hidden" value="true" />');
				}
			
				else {
					$respuesta -> assign("errorCiCoordinadorJunior", "innerHTML", '<font color="#990000" size="-1">* Cédula no registrada</font>');
					$respuesta -> assign("errorCCJ", "innerHTML", '<input name="errorCiCoordinadorJunior" type="hidden" value="true" />');
				}
			}
			
			else { // Si la cédula está registrada se verifica que el empleado pertenezca al personal de operaciones de la empresa
				$query = "SELECT DISTINCT CARGO, FECHA_FIN
               	      	  FROM HISTORIAL_EMPLEADOS
                   	  	  WHERE PK_FK_CODIGO = (SELECT PK_CODIGO FROM EMPLEADO WHERE CI = $ci)
						  AND CARGO = 'PERSONAL DE OPERACIONES'
						  AND FECHA_FIN IS NULL
						  ORDER BY FECHA_FIN DESC";
					  
				$sentencia = OCIParse($conexion, $query);
		
				OCIExecute($sentencia);
		
				$rows = OCIFetchstatement($sentencia, $resultado);
		
				if ($rows == 0) { // Si el empleado no pertenece al personal de operaciones
					if ($cargo == 'GERENTE') {
						$respuesta -> assign("errorCiGerente", "innerHTML", '<font color="#990000" size="-1">* El nuevo gerente debe<br />pertenecer actualmente al personal<br/>de operaciones de la empresa</font>');
						$respuesta -> assign("errorCG", "innerHTML", '<input name="errorCiGerente" type="hidden" value="true" />');
					}
			
					else {
						$respuesta -> assign("errorCiCoordinadorJunior", "innerHTML", '<font color="#990000" size="-1">* El nuevo coordinador junior debe<br />pertenecer actualmente al personal<br/>de operaciones de la empresa</font>');
						$respuesta -> assign("errorCCJ", "innerHTML", '<input name="errorCiCoordinadorJunior" type="hidden" value="true" />');
					}
				}
				
				else { // Si el empleado pertenece al personal de operaciones
					if ($cargo == 'GERENTE') {
						$respuesta -> assign("errorCiGerente", "innerHTML", '');
						$respuesta -> assign("errorCG", "innerHTML", '<input name="errorCiGerente" type="hidden" value="false" />');
					}
			
					else {
						$respuesta -> assign("errorCiCoordinadorJunior", "innerHTML", '');
						$respuesta -> assign("errorCCJ", "innerHTML", '<input name="errorCiCoordinadorJunior" type="hidden" value="false" />');
					}
				}
			}
		}
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("validarCargo");
	
	function insertar_local($local) {
		$rif = $local['rif'];
		$nombre = $local['nombre'];
		$descripcion = $local['descripcion'];
		$tamano = $local['tamano'];
		$locacion = $local['locacion'];
		$ciGerente = $local['ciGerente'];
		$ciCoordinadorJunior = $local['ciCoordinadorJunior'];
		$pais = $local['pais'];
		$estado = $local['estado'];
		$ciudad = $local['ciudad'];
		$casaEdif = $local['casaEdif'];
		$calleUrb = $local['calleUrb'];
		
		$conexion = OCILogon('spa', '1234') or die("¡No se pudo conectar a la base de datos!") or die(OCIError());
		
		/**
		 * Insertando la nueva dirección
		 */
		$query = "INSERT INTO DIRECCION VALUES ('$casaEdif', '$calleUrb', PK_ID_DIRECCION.NEXTVAL, $ciudad, $estado, $pais)";
		
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Recuperando el identificador del registro que acaba de ser ingresado en la tabla de direcciones
		 */
		$query = "SELECT MAX(PK_ID_DIRECCION) PK_ID_DIRECCION FROM DIRECCION";
		
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			$direccion = $resultado['PK_ID_DIRECCION'][0];
			
		$codigoGerente = "SELECT PK_CODIGO FROM EMPLEADO WHERE CI = $ciGerente";
		$codigoCoordinadorJunior = "SELECT PK_CODIGO FROM EMPLEADO WHERE CI = $ciCoordinadorJunior";
		
		/**
		 * Insertando el nuevo local
		 */
		$query = "INSERT INTO LOCAL VALUES ('$rif', UPPER('$nombre'), $tamano, '$locacion', UPPER('$descripcion'), $direccion, $ciudad,
											$estado, $pais, ($codigoGerente), ($codigoCoordinadorJunior), 'ACTIVO')";
		
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Recuperando el último sueldo devengado por el nuevo gerente
		 */
		$query = "SELECT SUELDO
		          FROM HISTORIAL_EMPLEADOS
				  WHERE PK_FK_CODIGO = ($codigoGerente)
				  AND FECHA_FIN IS NULL";
				  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			$sueldoGerente = $resultado['SUELDO'][0];
		
		/**
		 * Actualizando el último cargo del gerente del nuevo local
		 */
		$query = "UPDATE HISTORIAL_EMPLEADOS SET
				      FECHA_FIN = SYSDATE
				  WHERE PK_FK_CODIGO = ($codigoGerente)
				  AND FECHA_FIN IS NULL";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Insertando el nuevo cargo del gerente del nuevo local
		 */
		$query = "INSERT INTO HISTORIAL_EMPLEADOS VALUES ('GERENTE', $sueldoGerente, NULL, SYSDATE, ($codigoGerente), '$rif')";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Recuperando el último sueldo devengado por el nuevo coordinador junior
		 */
		$query = "SELECT SUELDO
		          FROM HISTORIAL_EMPLEADOS
				  WHERE PK_FK_CODIGO = ($codigoCoordinadorJunior)
				  AND FECHA_FIN IS NULL";
				  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		if ($rows > 0)
			$sueldoCoordinadorJunior = $resultado['SUELDO'][0];
		
		/**
		 * Actualizando el último cargo del coordinador junior del nuevo local
		 */
		$query = "UPDATE HISTORIAL_EMPLEADOS SET
				      FECHA_FIN = SYSDATE
				  WHERE PK_FK_CODIGO = ($codigoCoordinadorJunior)
				  AND FECHA_FIN IS NULL";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Insertando el nuevo cargo del coordinador junior del nuevo local
		 */
		$query = "INSERT INTO HISTORIAL_EMPLEADOS VALUES ('COORDINADOR JUNIOR', $sueldoGerente, NULL, SYSDATE,
														  ($codigoCoordinadorJunior), '$rif')";
				  
		$sentencia = OCIParse($conexion, $query);
		
		OCIExecute($sentencia);
		
		OCICommit($conexion);
		
		/**
		 * Recuperando los nombres de los lugares que conforman la dirección del nuevo local
		 */
		$query = "SELECT p.NOMBRE_PAIS, e.NOMBRE_EDO, c.NOMBRE_CIUDAD, d.CALLE_URB, d.CASA_EDIF
		          FROM DIRECCION d, CIUDAD c, ESTADO e, PAIS p
				  WHERE d.PK_ID_DIRECCION = $direccion
				  AND d.PK_FK_ID_CIUDAD = c.PK_ID_CIUDAD
				  AND d.PK_FK_ID_ESTADO = e.PK_ID_ESTADO
				  AND d.PK_FK_ID_PAIS = p.PK_ID_PAIS";
					  
		$sentencia = OCIParse($conexion, $query);
	
		OCIExecute($sentencia);
			
		$rows = OCIFetchstatement($sentencia, $resultado);
		
		$rif = '<font color="#FFFFFF">' . $rif . '</font>';
		$nombre = '<font color="#FFFFFF">' . $nombre . '</font>';
		$descripcion = '<font color="#FFFFFF">' . $descripcion . '</font>';
		$tamano = '<font color="#FFFFFF">' . $tamano . ' m<sup>2</sup></font>';
		$locacion = '<font color="#FFFFFF">' . $locacion . '</font>';
		$ciGerente = '<font color="#FFFFFF">' . buscarDatosEmpleado($ciGerente) . '</font>';
		$ciCoordinadorJunior = '<font color="#FFFFFF">' . buscarDatosEmpleado($ciCoordinadorJunior) . '</font>';
		$pais = '<font color="#FFFFFF">' . $resultado['NOMBRE_PAIS'][0] . '</font>';
		$estado = '<font color="#FFFFFF">' . $resultado['NOMBRE_EDO'][0] . '</font>';
		$ciudad = '<font color="#FFFFFF">' . $resultado['NOMBRE_CIUDAD'][0] . '</font>';
		$calleUrb = '<font color="#FFFFFF">' . $resultado['CALLE_URB'][0] . '</font>';
		$casaEdif = '<font color="#FFFFFF">' . $resultado['CASA_EDIF'][0] . '</font>';
		
		$mensaje = '<font color="#FFFFFF" size="+1">¡INSERCIÓN EXITOSA!</font>';
		
		$respuesta = new xajaxResponse();
		
		$respuesta -> assign("rif", "innerHTML", $rif);
		$respuesta -> assign("nombre", "innerHTML", $nombre);
		$respuesta -> assign("descripcion", "innerHTML", $descripcion);
		$respuesta -> assign("tamano", "innerHTML", $tamano);
		$respuesta -> assign("locacion", "innerHTML", $locacion);
		$respuesta -> assign("ciGerente", "innerHTML", $ciGerente);
		$respuesta -> assign("ciCoordinadorJunior", "innerHTML", $ciCoordinadorJunior);
		$respuesta -> assign("pais", "innerHTML", $pais);
		$respuesta -> assign("estado", "innerHTML", $estado);
		$respuesta -> assign("ciudad", "innerHTML", $ciudad);
		$respuesta -> assign("calleUrb", "innerHTML", $calleUrb);
		$respuesta -> assign("casaEdif", "innerHTML", $casaEdif);
		
		$respuesta -> assign("borrar", "innerHTML", '');
		$respuesta -> assign("registrar", "innerHTML", '');
		
		$respuesta -> assign("mensaje", "innerHTML", $mensaje);
		
		return $respuesta;
	}
	
	$xajax -> registerFunction("insertar_local");
	
	/**
     * Ejecutando el método del objeto xajax que permite procesar las
     * peticiones que puedan llegar desde la página
     */
     $xajax -> processRequest();
	 
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!--
Design by Free CSS Templates
http://www.freecsstemplates.org
Released for free under a Creative Commons Attribution 2.5 License

Name       : Beach Sunset
Description: A two-column, fixed-width design for 1024x768 screen resolutions.
Version    : 1.0
Released   : 20090416

-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Insertar nuevo local</title>
<?php
    	/**
         * Indicando al objeto xajax que se encargue de generar el cÃ³digo
         * javascript necesario para procesar las llamadas a ajax
         */
        $xajax -> printJavascript("xajax/");
	?>
    <script>
		function insertarLocal() {		
				errorPais = document.local.errorPais.value;
			    errorEstado = document.local.errorEstado.value;
			    errorCiudad = document.local.errorCiudad.value;
				errorCasaEdif = document.local.errorCasaEdif.value;
				errorCalleUrb = document.local.errorCalleUrb.value;
			    errorRif = document.local.errorRif.value;
				errorNombre = document.local.errorNombre.value;
				errorDescripcion = document.local.errorDescripcion.value;
				errorTamano = document.local.errorTamano.value;
				errorCiGerente = document.local.errorCiGerente.value;
				errorCiCoordinadorJunior = document.local.errorCiCoordinadorJunior.value;
				
				if ((errorPais == 'false') && (errorEstado == 'false') && (errorCiudad == 'false')&& (errorCasaEdif == 'false')&& (errorCalleUrb == 'false')&& (errorRif == 'false')&& (errorNombre == 'false')&& (errorDescripcion == 'false')&& (errorTamano == 'false')&& (errorCiGerente == 'false')&& (errorCiCoordinadorJunior == 'false'))
				
//		alert(errorPais + errorEstado + errorCiudad + errorCasaEdif + errorCalleUrb + errorFecha + errorCargo + errorApellido + errorNombre + errorCedula + errorFecha2 + errorGrado + errorSueldo);
		
		xajax_insertar_local(xajax.getFormValues('local'));
		
		else
        	alert("¡Los datos del local presentan inconvenientes, revise e intente de nuevo!");
				
			
		}
	</script>
  
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
<style type="text/css">
<!--
.Estilo2 {font-size: 12px; color: #FF6600; }
.Estilo3 {font-size: 12px; color: #FF9900; }
.Estilo4 {color: #FF6600}
.Estilo5 {font-size: 24px}
.Estilo7 {color: #FFFFFF}
.Estilo8 {font-size: 12px; color: #FFFFFF; }
.Estilo9 {font-size: 60px}
.Estilo10 {color: #F0F0F0}
-->
</style>

</head>
<body>

<div id="wrapper">
		<div id="header">	
 <br />
		<div id="menu">				      
				<li  class="active"><a href="HOME.php" title="HOME">HOME</a></li>
				<li><a href="INSERTAR.php" title="INSERTAR">INSERTAR</a></li>
				<li><a href="ELIMINAR.php" title="ELIMINAR">ELIMINAR</a></li>
				<li><a href="CONSULTAR.php" title="CONSULTAR">CONSULTAR</a></li>
				<li><a href="MODIFICAR.php" title="MODIFICAR">MODIFICAR</a></li>
                <li><a href="MOSTRAR.php" title="MOSTRAR">MOSTRAR</a></li>
	  	</div>  <!-- end #menu -->	
  </div>    <!-- end #header -->	

		<div id="logo">
			<h1><a href="#"><span class="">Take a Rest</span> ... </a></h1>
		    <div align="left"></div>
		</div>
		<!-- end #logo -->	
        
</div> <!-- end *header- wrapper -->

<div id="page">

	<div id="sidebar">
		<ul>
			<li>
				<h2>Acciones</h2>
				<p class="Estilo2">Pulse sobre una acción para ejecutarla</p>
			</li>
			<li>
            	<font color="#FFFFFF">&raquo; <a href="InsertarLocal.php" class="Estilo10">Agregar un nuevo local</a></font>
            </li>
            <li>
            	<font color="#FFFFFF">&raquo; <a href="ModificarLocal.php" class="Estilo10">Modificar un local existente</a></font>
            </li>
            <li>
            	<font color="#FFFFFF">&raquo; <a href="EliminarLocal.php" class="Estilo10">Eliminar un local</a></font>
            </li>
            <li>
            	<font color="#FFFFFF">&raquo; <a href="MostrarLocal.php" class="Estilo10">Mostrar todos los locales</a></font>
            </li>
		</ul>
</div>

  <h1 align="center"><font color="#FFFFFF">Insertar local</font></h1>
  <p>&nbsp;</p>
  <div align="center">
  <form id="local" name="local">
  <table width="509" border="0" cellpadding="5" cellspacing="5">
   <tr>
    <td width="246" align="right"><font color="#FFFFFF" size="+1">RIF</font></td>
    <td width="247" align="left"><div id="rif"><input name="rif" type="text" id="rif" size="40" maxlength="10" onblur="xajax_validarRif(document.local.rif.value)" /></div></td>
  </tr>
   <tr>
  	<td></td>
    <td><div id="errorRif"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorR"><input name="errorRif" type="hidden" value="true" /></div></td>
  </tr>
  
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Nombre</font></td>
    <td align="left"><div id="nombre"><input name="nombre" type="text" id="nombre" size="40" maxlength="30" onblur="xajax_validarNombre(document.local.nombre.value)" /></div></td>
  </tr>
     <tr>
  	<td></td>
    <td><div id="errorNombre"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorN"><input name="errorNombre" type="hidden" value="true" /></div></td>
  </tr>   
   <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Descripción</font></td>
    <td align="left"><div id="descripcion"><input name="descripcion" type="text" id="descripcion" size="40" maxlength="55" onblur="xajax_validarDescripcion(document.local.descripcion.value)" /></div></td>
  </tr>
     <tr>
  	<td></td>
    <td><div id="errorDescripcion"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorD"><input name="errorDescripcion" type="hidden" value="true" /></div></td>
  </tr> 
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Tamaño</font></td>
    <td align="left"><div id="tamano"><input name="tamano" type="text" size="35" maxlength="6"
    								   onblur="xajax_validarTamano(document.local.tamano.value)" /> <font color="#FFFFFF" size="+1">m<sup>2</sup></font></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorTamano"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorT"><input name="errorTamano" type="hidden" value="true" /></div></td>
  </tr>
     <td align="right"><font color="#FFFFFF" size="+1">Locación</font></td>
    <td align="left"><div id="locacion">Centro Comercial
      <input name="locacion" type="radio" value="CENTRO COMERCIAL" checked="checked" /><br />
      Fuera de centros comerciales 
      <input name="locacion" type="radio" value="FUERA DE CENTROS COMERCIALES" /><br />
	  Lugar amplio y fuera de centros comerciales 
      <input name="locacion" type="radio" value="LUGAR AMPLIO Y FUERA DE CENTROS COMERCIALES" /><br /></div></td>
  </tr>
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">CI Gerente</font></td>
    <td align="left"><div id="ciGerente"><input name="ciGerente" type="text" size="40" maxlength="10"
    								   onblur="xajax_validarCargo(document.local.ciGerente.value,
                                       			                  document.local.ciCoordinadorJunior.value, 'GERENTE')" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCiGerente"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorCG"><input name="errorCiGerente" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">CI Coordinador Junior</font></td>
    <td align="left"><div id="ciCoordinadorJunior"><input name="ciCoordinadorJunior" type="text" size="40" maxlength="10"
    								   onblur="xajax_validarCargo(document.local.ciCoordinadorJunior.value,
                                        						  document.local.ciGerente.value, 'COORDINADOR JUNIOR')" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCiCoordinadorJunior"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorCCJ"><input name="errorCiCoordinadorJunior" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">País</font></td>
    <td align="left"><div id="pais"><?php echo cargarPaises() ?></div></td>
  </tr> 
  <tr>
  	<td></td>
    <td><div id="errorPais"><font color="#990000" size="-1">* Seleccione un pa&iacute;s</font></div></td>
    <td><div id="errorP"><input name="errorPais" type="hidden" value="true" /></div></td>
  </tr> 
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Estado</font></td>
    <td align="left"><div id="estado"><select name="estado"><option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option></select></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorEstado"><font color="#990000" size="-1">* Seleccione un estado</font></div></td>
    <td><div id="errorE"><input name="errorEstado" type="hidden" value="true" /></div></td>
  </tr>
  <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Ciudad</font></td>
    <td align="left"><div id="ciudad"><select name="ciudad"><option value=0>Seleccione&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option></select></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCiudad"><font color="#990000" size="-1">* Seleccione una ciudad</font></div></td>
    <td><div id="errorC"><input name="errorCiudad" type="hidden" value="true" /></div></td>
  </tr>
   <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Calle/Urbanización</font></td>
    <td align="left"><div id="calleUrb"><input name="calleUrb" type="text" size="40" maxlength="20" 
    onblur="xajax_validarCalleUrb(document.local.calleUrb.value)" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCalleUrb"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorCU"><input name="errorCalleUrb" type="hidden" value="true" /></div></td>
  </tr>
   <tr>
    <td align="right"><font color="#FFFFFF" size="+1">Casa/Edificio</font></td>
    <td align="left"><div id="casaEdif"><input name="casaEdif" type="text" size="40" maxlength="20" 
    onblur="xajax_validarCasaEdif(document.local.casaEdif.value)" /></div></td>
  </tr>
  <tr>
  	<td></td>
    <td><div id="errorCasaEdif"><font color="#990000" size="-1">* Campo obligatorio</font></div></td>
    <td><div id="errorCE"><input name="errorCasaEdif" type="hidden" value="true" /></div></td>
  </tr>  
   <tr>
   	<td align="right"><div id="borrar"><input name="borrar" type="reset" value="Borrar todo" /></div></td>
    <td align="left"><div id="registrar"><input name="registrar" type="button" value="Registrar" onclick="insertarLocal()" /></div></td>
  </tr>
  <tr>
  	<td align="center" colspan="2"><div id="mensaje"></div></td>
  </tr>
  </table>
  </form>
  </div>
</div>
<!-- end #page -->

<div id="footer">
	<p> Design by <a href="http://www.freecsstemplates.org/">Nubielis, Eduardo, Daniel </a></p>
</div>
<!-- end #footer -->

</body>
</html>